package main

import "fmt"

func main() {
	var map1 map[string]int = make(map[string]int, 10)
	var map2 map[string]int = map[string]int{
		"apple":   1,
		"banana":  2,
		"banana2": 2,
		"banana3": 2,
		"banana4": 2,
	}
	var num1 int = map2["apple"]
	//不支持显式类型声明
	num2, ok1 := map2["banana"]
	/* var (
		num2 int
		ok bool
	) = map2["banana"] */
	map1["a"] = 1
	map1["b"] = 2
	map1["c"] = 3

	fmt.Printf("map2[apple] = %d\n", num1)
	if ok1 {
		fmt.Printf("map2[banana] = %d\n", num2)
	}
	fmt.Printf("len(map2) = %d\n", len(map2))
	for key, value := range map1 {
		fmt.Printf("map1 key = %s,value = %d\n", key, value)
	}
	delete(map1,"a")
	delete(map1,"b")
	for key, value := range map1 {
		fmt.Printf("map1 key = %s,value = %d\n", key, value)
	}
}
